package acl

type ClassGenAnyReq struct {
	ClassGenReq

	Object any `json:"object" form:"object"`
}

type ClassGenReq struct {
	Domain    string `json:"domain" form:"domain" find:"match:eq" vd:"required"`
	ClassName string `json:"className" form:"className" find:"match:eq" vd:"required"`

	BackAcl           bool `json:"backAcl" form:"backAcl"`
	BackApi           bool `json:"backApi" form:"backApi"`
	BackEntity        bool `json:"backEntity" form:"backEntity"`
	BackHttpClient    bool `json:"backHttpClient" form:"backHttpClient"`
	BackHttpRouter    bool `json:"backHttpRouter" form:"backHttpRouter"`
	BackHttpTest      bool `json:"backHttpTest" form:"backHttpTest"`
	BackRepo          bool `json:"backRepo" form:"backRepo"`
	BackService       bool `json:"backService" form:"backService"`
	FrontApi          bool `json:"frontApi" form:"frontApi"`
	FrontView         bool `json:"frontView" form:"frontView"`
	FrontViewProvider bool `json:"frontViewProvider" form:"frontViewProvider"`

	Force bool `json:"force" form:"force"` // 是否强制覆盖
}

type DomainCheckReq struct {
	Domain string `json:"domain" form:"domain" find:"match:eq" vd:"required"`
}

type DomainGenReq struct {
	Domain      string `json:"domain" form:"domain" find:"match:eq" vd:"required"` // 域名
	Description string `json:"description" form:"description"`                     // 描述

	Force bool `json:"force" form:"force"` // 是否强制覆盖
}
